home *** CD-ROM | disk | FTP | other *** search
/ BBS Toolkit / BBS Toolkit.iso / rbbs_pc / pgvw174.zip / RSB2CHAT.MRG < prev    next >
Text File  |  1992-06-22  |  10KB  |  239 lines

  1. * ------------[ BLED merge (c) Ken Goosens ]-------------
  2. * Merge this against RBBSSUB2.BAS to produce NEW\RSB2CHAT.BAS
  3. * RBBSSUB2.BAS:  Date 6-20-1992  Size 140946 bytes
  4. * ------------[ Created 06-22-1992 11:34:13 ]------------
  5. * REPLACING old line(s) by new
  6. 109 '  $SUBTITLE: 'VarInit - subroutine to initialize system variables'
  7. '  $PAGE
  8. '
  9. '  NAME    --  VarInit
  10. '
  11. '  INPUTS  --  PARAMETER           MEANING
  12. '              NONE
  13. '
  14. '  OUTPUTS --  NONE
  15. '
  16. '  PURPOSE --  To initialize system variable
  17. '
  18.       SUB VarInit STATIC
  19.     DEF SEG                            ' Point to BASIC
  20.     WIDTH 80                           ' Set Screen Width
  21.     KEY OFF                            ' Line 25 turned off
  22. ' ********************* Variable Definitions *******************************
  23.     ZMsgDim = 99
  24.     WasMM = 999
  25.     WasBX = 75
  26.     WasJ = 60
  27.     REDIM ZOptSec(WasJ)
  28.     DIM ZWorkAra$(WasJ)
  29.     DIM ZGSRAra$(WasJ)
  30.     DIM ZCategoryName$(WasBX),ZCategoryCode$(WasBX),ZCategoryDesc$(WasBX)
  31.     DIM ZOutTxt$(ZMsgDim)                      ' Message line table
  32.     DIM ZUserIn$(ZMsgDim)                      ' Message line table
  33.     DIM ZMsgPtr(WasMM,2)                       ' Message pointers
  34.     ZAcknowledge$ = CHR$(6)
  35.     ZAckChar$ = "C" + _
  36.             ZAcknowledge$
  37.     ZActiveMenu$ = "B"
  38.     ZActiveMessage$ = CHR$(225)
  39.     ZBackSpace$ = CHR$(8) + _
  40.                  CHR$(32) + _
  41.                  CHR$(8)
  42.     ZBackArrow$ = CHR$(29) + _
  43.                   CHR$(32) + _
  44.                   CHR$(29)
  45.     ZBaudRates$ = "      300  450 1200 2400 4800 7200 96001200014400168001920038400"
  46.     ZBellRinger$ = CHR$(7)
  47.     ZBulletinMenu$ = ""
  48.     ZWasCL = 24
  49.     ZCancel$ = CHR$(24)
  50.     ZColorReset$ = CHR$(27) + _
  51.                    "[00;37;40m"
  52.     ZConfigFileName$ = "RBBS-PC.DEF"
  53.     ZCarriageReturn$ = CHR$(13)
  54.     ZDeletedMsg$ = CHR$(226)
  55.     ZEndTransmission$ = CHR$(4)
  56.     ZEscape$ = CHR$(27)
  57.     ZExpectActiveModem = 0
  58.     ZFalse = 0
  59.     ZF1Key = 59
  60.     ZF10Key = 68
  61.     ZConfName$ = "MAIN"
  62.     CALL SetHiLite (ZTrue)
  63.     ZHomeConf$ = ""
  64.     ZInConfMenu = -1
  65.     ZLastCommand$ = "M "
  66.     ZLimitMinsPerSession = 0
  67.     ZLineFeed$ = CHR$(10)
  68.     ZLineFeeds = NOT ZFalse
  69.     ZLineEditChk$ = CHR$(9) + _
  70.                     ZLineFeed$ + _
  71.                     CHR$(11) + _
  72.                     CHR$(12) + _
  73.                     CHR$(127) + _
  74.                     CHR$(8) + _
  75.                     ZBellRinger$ + _
  76.                     CHR$(26) + _
  77.                     CHR$(227)
  78.     ZLineMes$ = SPACE$(78)          ' fixed length string workspace
  79.     ZLockStatus$ = "UM UU UB UD"
  80.     ZMenuIndex = 2
  81.     ZNAK$ = CHR$(21)
  82.     ZNoAdvance = ZFalse
  83.     ZPageLength = 23
  84.     ZParseOff = ZFalse
  85.     ZPressEnter$ = " (Press [ENTER] to quit)"
  86.     ZPressEnterExpert$ = " ([ENTER] quits)"
  87.     ZPressEnterNovice$ = ZPressEnter$
  88.     ZPrivateDoor = ZFalse
  89.     ZRightMargin = 72
  90.     ZReturnLineFeed$ = ZCarriageReturn$ + _
  91.                         ZLineFeed$
  92.     ZSmartTable$ = "CS PB NS FN LN SL DT TM TR TE TL RP RR CT " + _
  93.                    "C1 C2 C3 C4 C0 DD BD DB UB DL UL FI VY VN " + _
  94.                    "TY TN BN ND FS LS CN"
  95.     ZStartOfHeader$ = CHR$(1)
  96.     ZTimeLoggedOn$ = SPACE$(8)
  97.     ZTrue = NOT ZFalse
  98.     ZUpInc = -1
  99.     ZXOff$ = CHR$(19)
  100.     ZXOn$ = CHR$(17)
  101.     ZInterrupOn$ = CHR$(11) + ZCancel$ + ZXOff$ + ZXOn$ + ZCarriageReturn$
  102.     ZOptionEnd$ = ZReturnLineFeed$ + " ,("
  103.     ZCrLf$ = ZCarriageReturn$ + ZLineFeed$
  104. * ------[ first line different ]------
  105.     ZVersionID$ = "17.4 PAGE-VIEW"                                   ' DR062201
  106.     ZWasLG$(1) = "Registration Check Failed"
  107.     ZWasLG$(2) = "Sysop name attempted"
  108.     ZWasLG$(3) = "Locked out attempt"
  109.     ZWasLG$(4) = "Password Attempt Failed"
  110.     ZWasLG$(5) = "Auto Lockout done"
  111.     ZWasLG$(6) = "Name in use on another Node!"
  112.     ZWasLG$(7) = ""
  113.     ZWasLG$(8) = "Locked reason read!"
  114.     ZWasLG$(9) = "Expired Registration"
  115.     CALL GetCommand (ZDebug,ZNetTime$,ZNetBaud$,ZNetReliable$)
  116.     ZSubParm = 1
  117.     CALL ReadDef (ZConfigFileName$)
  118.     REDIM ZWorkAra$(ZMaxWorkVar)
  119.     REDIM ZGSRAra$(ZMaxWorkVar)
  120.     ZUseTPut = (ZUpperCase OR ZXOnXOff)
  121.     ZOrigCallers$ = ZCallersFile$
  122.     ZOrigMsgFile$ = ZMainMsgFile$
  123.     ZOrigUserFile$ = ZMainUserFile$
  124.     ZOrigSysopFN$ = ZSysopFirstName$
  125.     ZOrigSysopLN$ = ZSysopLastName$
  126.     ZPromptBell = ZPromptBellDef
  127.     ZSecretName$ = ZSysopPswd1$ + " " + ZSysopPswd2$
  128.     END SUB
  129. '
  130. * REPLACING old line(s) by new
  131. 9801 ' $SUBTITLE: 'WhosOn - subroutine to display who is on'
  132. ' $PAGE
  133. '
  134. '  NAME    -- WhosOn
  135. '
  136. '  INPUTS  --     PARAMETER                    MEANING
  137. '                NumNodes                   # of nodes to check
  138. '                ZActiveMessageFile$        Current message file
  139. '                ZOrigMsgFile$              Main msg file
  140. '
  141. '  OUTPUTS --  None
  142. '
  143. '  PURPOSE --  To display who is on each node.
  144. '
  145.      SUB WhosOn (NumNodes) STATIC
  146.      WasA1$ = ZActiveMessageFile$
  147.      ZActiveMessageFile$ = ZOrigMsgFile$
  148.      CALL OpenMsg
  149.      FIELD 1, 128 AS ZMsgRec$
  150.      FOR NodeIndex = 2 TO NumNodes + 1
  151.         GET 1,NodeIndex
  152.         ZOutTxt$ = ZFG1$ + "Node" + _
  153.              STR$(NodeIndex - 1) + ZFG2$
  154.         RecIndex = -VAL(MID$(ZMsgRec$,44,2))
  155.         IF RecIndex >= 0 THEN _
  156.            RecIndex = -1
  157.         WasAX$ = MID$(ZBaudRates$,(-5 * RecIndex ),5) + _
  158.               " BPS: "
  159.         IF MID$(ZMsgRec$,55,2) = "-1" AND NOT ZSysop THEN _
  160.            ZWasY$ = "SYSOP" + SPACE$(21) _
  161.         ELSE ZWasY$ = MID$(ZMsgRec$,1,26)
  162.         WasAX$ = WasAX$ + ZFG3$ + ZWasY$
  163.         IF MID$(ZMsgRec$,40,2) <> "-1" THEN _
  164.            WasAX$ = WasAX$ + ZFG4$ + MID$(ZMsgRec$,93,22)
  165.         IF MID$(ZMsgRec$,57,1) = "A" THEN _
  166.            ZOutTxt$ = ZOutTxt$ + "  Online at " + _
  167.                 WasAX$ _
  168.         ELSE IF NOT ZSysop THEN _
  169.                 ZOutTxt$ = ZOutTxt$ + _
  170.                      " Waiting for next caller" _
  171.              ELSE ZOutTxt$ = ZOutTxt$ + _
  172.                        " Offline at " + _
  173.                        WasAX$
  174.         CALL QuickTPut1 (ZOutTxt$)
  175.         CALL AskMore ("",ZTrue,ZTrue,ZAnsIndex,ZFalse)
  176.         IF ZNo THEN _
  177.            NodeIndex = NumNodes + 2
  178.      NEXT
  179. * ------[ first line different ]------
  180. * INSERTING new line(s)
  181. 9803 OutTxt$ = ZFG1$ + _                                             ' DR062201
  182.     "Would you like to 'view' the other users? ( " + _           ' DR062201
  183.     ZFG4$ + "Y" + ZFG1$ + ")es, " + ZEmphasizeOn$ + "[N]" + _    ' DR062201
  184.     ZFG1$ + "o )" + ZEmphasizeOff$                               ' DR062201
  185.      ZSubParm = 1                                                    ' DR062201
  186.      CALL QuickTPut (OutTxt$,0)                                      ' DR062201
  187.      ZOutTxt$ = ""                                                   ' DR062201
  188.      CALL TGET                                                       ' DR062201
  189.      IF NOT ZYes THEN 9805                                           ' DR062201
  190.      CALL OpenMsg                                                    ' DR062201
  191.      FIELD 1, 128 AS ZMsgRec$                                        ' DR062201
  192.      FOR ZNodeIndex = 2 to NumNodes + 1                              ' DR062201
  193.      GET 1,ZNodeIndex                                                ' DR062201
  194.      NodeVal = VAL(ZNodeID$)                                         ' DR062201
  195.      IF ZNodeID$ = "0" THEN NodeVal = 10 _                           ' DR062201
  196.     ELSE IF VAL(ZNodeID$) = 0 THEN _                             ' DR062201
  197.        NodeVal = ASC(ZNodeID$) - 54                              ' DR062201
  198.      IF ZNodeIndex - 1 = NodeVal THEN 9804                           ' DR062201
  199.      IF MID$(ZMsgRec$,57,1) <> "A" THEN _                            ' DR062201
  200.     A$ = ZFG1$ + "Node" + STR$(ZNodeIndex - 1) + ZFG2$ + _       ' DR062201
  201.     " is awaiting next caller." : _                              ' DR062201
  202.     CALL QuickTPut (A$,1) _                                      ' DR062201
  203.     ELSE CALL ViewUser (STR$(ZNodeIndex - 1))                    ' DR062201
  204. 9804 NEXT                                                            ' DR062201
  205. 9805 ZActiveMessageFile$ = WasA1$                                    ' DR062201
  206.      CALL QuickTPut (ZEmphasizeOff$,0)                               ' DR062201
  207.      END SUB                                                         ' DR062201
  208. * REPLACING old line(s) by new
  209. 10989 IF ZTransferFunction = 3 THEN _
  210.          ZWasY$ = "Registration" _
  211.       ELSE ZWasY$ = ZDooredTo$
  212. * ------[ first line different ]------
  213.       CALL ViewStat ("F" + ZWasY$)                                   ' DR062201
  214.       ZOutTxt$ = ZWasY$ + _
  215.            " door opened at " + _
  216.            TIME$ + _
  217.            " on " + _
  218.            DATE$
  219.       ZSubParm = 5
  220.       CALL TPut
  221.       CALL UpdtCalr (ZDooredTo$ + " door opened!",2)
  222.       CALL DoorInfo
  223.       IF ExitMethod$ = "S" THEN _
  224.          CALL UpdateU (ZFalse) : _
  225.          CLOSE 4,5 : _
  226.          CALL ShellExit (ExitTemplate$) : _
  227.          ZPrevCaller$ = "" : _
  228.          CALL SetCall : _
  229.          ZExitToDoors = ZTrue : _
  230.          CALL DoorReturn : _
  231.          CALL BufFile (ZDoorDisplay$,WasX) : _
  232.          ZExitToDoors = ZFalse _
  233.       ELSE ZOutTxt$(1) = ZDiskForDos$ + _
  234.                   "COMMAND /C " + _
  235.                   ExitTo$ : _
  236.            ZOutTxt$(2) = ZRBBSBat$ : _
  237.            CALL RBBSExit (ZOutTxt$(),2)
  238.       END SUB
  239.